Skip to content

Update Heka Wallet to use Credo 0.6.2 and RN 0.81.6 - #157

Merged
AlexanderShenshin merged 4 commits into
mainfrom
feature/heka-wallet-credo-0.6.0
Jun 2, 2026
Merged

Update Heka Wallet to use Credo 0.6.2 and RN 0.81.6#157
AlexanderShenshin merged 4 commits into
mainfrom
feature/heka-wallet-credo-0.6.0

Conversation

@AlexanderShenshin

Copy link
Copy Markdown
Contributor

Description:
Extensive update for Heka Wallet with core dependencies bump (Credo, Bifold, React Native).

Includes related updates and misc. fixes for Identity Service and Web UI.

Checklist

  • Documented (Code comments, README, etc.)
  • Tested (unit, integration, etc.)

Signed-off-by: Alexander Shenshin <alexander.shenshin@dsr-corporation.com>
Signed-off-by: Alexander Shenshin <alexander.shenshin@dsr-corporation.com>
Signed-off-by: Alexander Shenshin <alexander.shenshin@dsr-corporation.com>
@AlexanderShenshin AlexanderShenshin self-assigned this May 27, 2026
@coderabbitai

coderabbitai Bot commented May 27, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 219 files, which is 69 over the limit of 150.

To get a review, narrow the scope:
• coderabbit review --type committed # exclude uncommitted changes
• coderabbit review --dir # limit to a subdirectory
• coderabbit review --base # compare against a closer base

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 67196805-6a41-498b-92bf-e4f35ba16c48

📥 Commits

Reviewing files that changed from the base of the PR and between bbf9dce and 46e530d.

⛔ Files ignored due to path filters (16)
  • heka-wallet/.yarn/patches/@bifold-react-hooks-npm-3.0.0-789025c61c.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@credo-ts-core-npm-0.5.19-0177059ca8.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@credo-ts-didcomm-npm-0.6.2-797b274a19.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@credo-ts-react-hooks-patch-b7251718da.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@credo-ts-react-hooks-patch-ed8828d859.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@dsrcorporation-aries-bifold-core-npm-1.0.0-alpha-dsrw.14-c26c846948.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@hiero-did-sdk-zstd-npm-0.1.8-e30dd925a3.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@hyperledger-indy-vdr-react-native-npm-0.2.2-627d424b96.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@hyperledger-indy-vdr-react-native-npm-0.2.3-d7ed0b15da.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@hyperledger-indy-vdr-shared-npm-0.2.2-b989282fc6.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@sphereon-did-auth-siop-npm-0.16.1-next.3-9b260c4e52.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@sphereon-jarm-npm-0.16.1-fix.173-188369b6b3.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/@sphereon-oid4vci-client-npm-0.16.1-next.3-d072e8ebc7.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/react-native-gifted-chat-npm-0.16.3-9cbc12a602.patch is excluded by !**/.yarn/**
  • heka-wallet/.yarn/patches/react-native-vision-camera-npm-4.7.3-dc361fe55c.patch is excluded by !**/.yarn/**
  • heka-wallet/yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (219)
  • ROADMAP.md
  • heka-identity-service-web-ui/README.md
  • heka-identity-service-web-ui/scripts/prepare-demo-user.ts
  • heka-identity-service-web-ui/src/components/Layout/UnauthenticatedLayout.tsx
  • heka-identity-service-web-ui/src/components/Logo/Logo.tsx
  • heka-identity-service-web-ui/src/components/Panel/Panel.tsx
  • heka-identity-service-web-ui/src/components/Steps/CredentialOffer/CredentialOffer.module.scss
  • heka-identity-service-web-ui/src/components/Steps/CredentialOffer/states/CredentialSent.tsx
  • heka-identity-service-web-ui/src/components/Steps/FillCredentialData/FillCredentialData.tsx
  • heka-identity-service-web-ui/src/components/Steps/VerificationRequest/VerificationRequest.module.scss
  • heka-identity-service-web-ui/src/components/Steps/VerificationRequest/states/PendingPresentation.tsx
  • heka-identity-service-web-ui/src/components/Steps/VerificationRequest/states/PresentationReceived.tsx
  • heka-identity-service-web-ui/src/entities/Credential/model/utils/credential.ts
  • heka-identity-service-web-ui/src/entities/Presentation/model/utils/presentation-request.ts
  • heka-identity-service-web-ui/src/entities/Schema/model/types/schema.ts
  • heka-identity-service-web-ui/src/pages/AgeVerificationDemo/AgeVerificationDemo.tsx
  • heka-identity-service-web-ui/src/pages/SignUp/SignUp.tsx
  • heka-identity-service-web-ui/src/pages/VerifyCredential/VerificationFromTemplate/VerificationFromTemplate.tsx
  • heka-identity-service-web-ui/src/shared/ui/Search/Search.test.tsx
  • heka-identity-service-web-ui/src/shared/ui/TextInput/TextInput.test.tsx
  • heka-identity-service/README.md
  • heka-identity-service/docs/concepts.md
  • heka-identity-service/docs/hedera.md
  • heka-identity-service/docs/how-to-issue-sd-jwt-vc.md
  • heka-identity-service/docs/local-config-for-heka-wallet-integration.md
  • heka-identity-service/docs/setup.md
  • heka-identity-service/docs/swagger-spec.yaml
  • heka-identity-service/patches/@credo-ts+core+0.6.2.patch
  • heka-identity-service/patches/@credo-ts+openid4vc+0.6.2.patch
  • heka-identity-service/src/config/__tests__/express.config.test.ts
  • heka-identity-service/src/config/agent.ts
  • heka-identity-service/src/config/express.ts
  • heka-identity-service/src/schema-v2/__tests__/schema-v2.service.test.ts
  • heka-identity-service/src/schema-v2/schema-v2.module.ts
  • heka-identity-service/src/schema-v2/schema-v2.service.ts
  • heka-wallet/.eslintrc.js
  • heka-wallet/app/.env
  • heka-wallet/app/App.tsx
  • heka-wallet/app/__tests__/credentials/fixtures.ts
  • heka-wallet/app/__tests__/credentials/mappers/mdoc.spec.ts
  • heka-wallet/app/__tests__/credentials/useOpenIdHandlers.spec.ts
  • heka-wallet/app/__tests__/stores/PasskeysStore.spec.ts
  • heka-wallet/app/__tests__/utils/keychain.spec.ts
  • heka-wallet/app/android/app/build.gradle
  • heka-wallet/app/android/app/src/debug/AndroidManifest.xml
  • heka-wallet/app/android/app/src/main/AndroidManifest.xml
  • heka-wallet/app/android/app/src/main/java/com/ariesbifold/MainApplication.kt
  • heka-wallet/app/android/build.gradle
  • heka-wallet/app/android/gradle.properties
  • heka-wallet/app/android/gradle/wrapper/gradle-wrapper.properties
  • heka-wallet/app/android/settings.gradle
  • heka-wallet/app/babel.config.js
  • heka-wallet/app/container-impl.tsx
  • heka-wallet/app/ios/HekaWallet-Bridging-Header.h
  • heka-wallet/app/ios/HekaWallet.swift
  • heka-wallet/app/ios/HekaWallet/AppDelegate.h
  • heka-wallet/app/ios/HekaWallet/AppDelegate.m
  • heka-wallet/app/ios/HekaWallet/AppDelegate.swift
  • heka-wallet/app/ios/HekaWallet/HekaWallet.entitlements
  • heka-wallet/app/ios/HekaWallet/HekaWalletDebug.entitlements
  • heka-wallet/app/ios/HekaWallet/HekaWalletRelease.entitlements
  • heka-wallet/app/ios/HekaWallet/Info.plist
  • heka-wallet/app/ios/HekaWallet/main.m
  • heka-wallet/app/ios/HekaWalletTests/HieroWallet.m
  • heka-wallet/app/ios/HekaWalletTests/Info.plist
  • heka-wallet/app/ios/Podfile
  • heka-wallet/app/metro.config.js
  • heka-wallet/app/package.json
  • heka-wallet/app/src/components/cards/CredentialCard.tsx
  • heka-wallet/app/src/components/cards/ItemsListCard.tsx
  • heka-wallet/app/src/components/cards/NotificationCard.tsx
  • heka-wallet/app/src/components/cards/SectionCard.tsx
  • heka-wallet/app/src/components/chat/ActionSlider.tsx
  • heka-wallet/app/src/components/chat/ChatEvent.tsx
  • heka-wallet/app/src/components/chat/ChatMessage.tsx
  • heka-wallet/app/src/components/misc/ConnectionContextMenu.tsx
  • heka-wallet/app/src/components/misc/CredentialContextMenu.tsx
  • heka-wallet/app/src/components/misc/EmptyListContacts.tsx
  • heka-wallet/app/src/components/misc/ExchangeRecordDisplay.tsx
  • heka-wallet/app/src/components/misc/ExternalPartyDisplay.tsx
  • heka-wallet/app/src/components/misc/PinKeyPad.tsx
  • heka-wallet/app/src/components/misc/QRScanner.tsx
  • heka-wallet/app/src/components/misc/Record.tsx
  • heka-wallet/app/src/components/misc/RecordField.tsx
  • heka-wallet/app/src/components/misc/SharedProofData.tsx
  • heka-wallet/app/src/components/misc/Toast.tsx
  • heka-wallet/app/src/components/misc/UnorderedList.tsx
  • heka-wallet/app/src/components/modals/ActionWarningModal.tsx
  • heka-wallet/app/src/components/modals/AlertModal.tsx
  • heka-wallet/app/src/components/modals/CameraDisclosureModal.tsx
  • heka-wallet/app/src/components/modals/ContextMenuModal.tsx
  • heka-wallet/app/src/components/modals/CredentialOfferAcceptModal.tsx
  • heka-wallet/app/src/components/modals/ErrorModal.tsx
  • heka-wallet/app/src/components/modals/PasskeysAuthModal.tsx
  • heka-wallet/app/src/components/modals/ProofRequestAcceptModal.tsx
  • heka-wallet/app/src/components/views/CredentialOfferView.tsx
  • heka-wallet/app/src/components/views/OnBoardingPage.tsx
  • heka-wallet/app/src/components/views/PresentationRequestView.tsx
  • heka-wallet/app/src/contexts/MdocCredentials.tsx
  • heka-wallet/app/src/contexts/SdJwtCredentials.tsx
  • heka-wallet/app/src/contexts/W3cCredentials.tsx
  • heka-wallet/app/src/credentials/mappers/credential-display.ts
  • heka-wallet/app/src/credentials/mappers/credential.ts
  • heka-wallet/app/src/credentials/mappers/humanize.ts
  • heka-wallet/app/src/credentials/mappers/mdoc.ts
  • heka-wallet/app/src/credentials/mappers/presentation.ts
  • heka-wallet/app/src/credentials/mappers/sd-jwt.ts
  • heka-wallet/app/src/credentials/mappers/utils.ts
  • heka-wallet/app/src/credentials/metadata.ts
  • heka-wallet/app/src/credentials/types/credential.ts
  • heka-wallet/app/src/credentials/types/presentation.ts
  • heka-wallet/app/src/credentials/useCredentialRecordHelpers.ts
  • heka-wallet/app/src/credentials/useCredentials.ts
  • heka-wallet/app/src/credentials/useOpenIdHandlers.ts
  • heka-wallet/app/src/hooks/chat-messages.tsx
  • heka-wallet/app/src/index.ts
  • heka-wallet/app/src/indy-besu/dids/DidTypesMapping.ts
  • heka-wallet/app/src/localization/en/index.ts
  • heka-wallet/app/src/localization/fr/index.ts
  • heka-wallet/app/src/localization/pt-br/index.ts
  • heka-wallet/app/src/navigators/AuthStack.tsx
  • heka-wallet/app/src/navigators/BackupStack.tsx
  • heka-wallet/app/src/navigators/BifoldStack.tsx
  • heka-wallet/app/src/navigators/CredentialStack.tsx
  • heka-wallet/app/src/navigators/HomeStack.tsx
  • heka-wallet/app/src/navigators/OnboardingScreens.tsx
  • heka-wallet/app/src/navigators/OnboardingStack.tsx
  • heka-wallet/app/src/navigators/OpenIdStack.tsx
  • heka-wallet/app/src/navigators/RootStack.tsx
  • heka-wallet/app/src/navigators/SettingsStack.tsx
  • heka-wallet/app/src/navigators/TabStack.tsx
  • heka-wallet/app/src/navigators/types.ts
  • heka-wallet/app/src/screens/AriesCredentialOffer.tsx
  • heka-wallet/app/src/screens/AriesPresentationRequest.tsx
  • heka-wallet/app/src/screens/AttemptLockout.tsx
  • heka-wallet/app/src/screens/Chat.tsx
  • heka-wallet/app/src/screens/Connection.tsx
  • heka-wallet/app/src/screens/ContactList.tsx
  • heka-wallet/app/src/screens/CredentialDetails.tsx
  • heka-wallet/app/src/screens/CredentialList.tsx
  • heka-wallet/app/src/screens/Home.tsx
  • heka-wallet/app/src/screens/Language.tsx
  • heka-wallet/app/src/screens/Login.tsx
  • heka-wallet/app/src/screens/Onboarding.tsx
  • heka-wallet/app/src/screens/OpenIdCredentialOffer.tsx
  • heka-wallet/app/src/screens/OpenIdPresentationRequest.tsx
  • heka-wallet/app/src/screens/PINCreate.tsx
  • heka-wallet/app/src/screens/PINEnter.tsx
  • heka-wallet/app/src/screens/PresentationCredentialChange.tsx
  • heka-wallet/app/src/screens/ProofDetails.tsx
  • heka-wallet/app/src/screens/Scan.tsx
  • heka-wallet/app/src/screens/Settings.tsx
  • heka-wallet/app/src/screens/Splash.tsx
  • heka-wallet/app/src/screens/Terms.tsx
  • heka-wallet/app/src/screens/UseBiometry.tsx
  • heka-wallet/app/src/screens/UserProfile.tsx
  • heka-wallet/app/src/screens/WalletRestore.tsx
  • heka-wallet/app/src/screens/WhatAreContacts.tsx
  • heka-wallet/app/src/stores/OAuthStore.ts
  • heka-wallet/app/src/stores/PasskeysStore.ts
  • heka-wallet/app/src/types/keychain.ts
  • heka-wallet/app/src/types/react-i18next.d.ts
  • heka-wallet/app/src/utils/agent.ts
  • heka-wallet/app/src/utils/crypto.ts
  • heka-wallet/app/src/utils/keychain.ts
  • heka-wallet/app/src/utils/useBasicMessageInvitations.ts
  • heka-wallet/app/src/utils/useContacts.ts
  • heka-wallet/app/src/utils/useInvitationHandlers.ts
  • heka-wallet/app/src/utils/useNotifications.ts
  • heka-wallet/app/src/utils/useWalletAuthHelpers.tsx
  • heka-wallet/app/src/utils/useWalletBackupHelpers.ts
  • heka-wallet/app/src/utils/useWalletSettings.tsx
  • heka-wallet/jest-helpers/__mocks__/bifold-core-src.js
  • heka-wallet/jest-helpers/__mocks__/bifold-core.js
  • heka-wallet/jest-helpers/__mocks__/heka-wallet-shared.js
  • heka-wallet/jest-helpers/jest.config-base.js
  • heka-wallet/jest.setup.js
  • heka-wallet/package.json
  • heka-wallet/packages/keplr/__tests__/utils/useSimpleTimer.spec.ts
  • heka-wallet/packages/keplr/__tests__/utils/useZeroOrPositiveIntegerString.spec.ts
  • heka-wallet/packages/keplr/jest.config.js
  • heka-wallet/packages/keplr/package.json
  • heka-wallet/packages/keplr/src/KeplrStore.ts
  • heka-wallet/packages/keplr/src/components/inputs/FeeButtons.tsx
  • heka-wallet/packages/keplr/src/components/misc/AccountItem.tsx
  • heka-wallet/packages/keplr/src/components/misc/AddressCopyable.tsx
  • heka-wallet/packages/keplr/src/components/misc/WordChip.tsx
  • heka-wallet/packages/keplr/src/components/misc/WordsCard.tsx
  • heka-wallet/packages/keplr/src/components/modals/BIP44SelectModal.tsx
  • heka-wallet/packages/keplr/src/components/modals/CoinTypeSelect.tsx
  • heka-wallet/packages/keplr/src/components/views/Account.tsx
  • heka-wallet/packages/keplr/src/components/views/RegisterForm.tsx
  • heka-wallet/packages/keplr/src/navigators/AuthStack.tsx
  • heka-wallet/packages/keplr/src/navigators/KeplrStack.tsx
  • heka-wallet/packages/keplr/src/navigators/MainStack.tsx
  • heka-wallet/packages/keplr/src/navigators/RegisterStack.tsx
  • heka-wallet/packages/keplr/src/screens/SelectAccount.tsx
  • heka-wallet/packages/keplr/src/screens/Send.tsx
  • heka-wallet/packages/keplr/src/screens/Unlock.tsx
  • heka-wallet/packages/keplr/src/screens/register/NewLedger.tsx
  • heka-wallet/packages/keplr/src/screens/register/RegisterEnd.tsx
  • heka-wallet/packages/keplr/src/screens/register/RegisterIntro.tsx
  • heka-wallet/packages/keplr/src/screens/register/mnemonic/NewMnemonic.tsx
  • heka-wallet/packages/keplr/src/screens/register/mnemonic/RecoverMnemonic.tsx
  • heka-wallet/packages/keplr/src/screens/register/mnemonic/VerifyMnemonic.tsx
  • heka-wallet/packages/keplr/src/stores/KeyChainStore.ts
  • heka-wallet/packages/shared/package.json
  • heka-wallet/packages/shared/src/components/buttons/IconButton.tsx
  • heka-wallet/packages/shared/src/components/icons/BootstrapIcon.tsx
  • heka-wallet/packages/shared/src/components/inputs/PINInput.tsx
  • heka-wallet/packages/shared/src/components/inputs/TextInput.tsx
  • heka-wallet/packages/shared/src/components/misc/ExpandingDot.tsx
  • heka-wallet/packages/shared/src/components/misc/StepProgressHeader.tsx
  • heka-wallet/packages/shared/src/components/modals/ConfirmationInputModal.tsx
  • heka-wallet/packages/shared/src/components/views/PinConfirmation.tsx
  • heka-wallet/packages/shared/src/logger/Logger.ts
  • heka-wallet/packages/shared/src/theme.ts
  • heka-wallet/packages/shared/src/utils/number.ts
  • heka-wallet/tsconfig.json

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/heka-wallet-credo-0.6.0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions

github-actions Bot commented May 27, 2026

Copy link
Copy Markdown

Coverage Report for ./heka-identity-service

Status Category Percentage Covered / Total
🔵 Lines 92.52% 3058 / 3305
🔵 Statements 92.52% 3058 / 3305
🔵 Functions 97.28% 179 / 184
🔵 Branches 82.66% 720 / 871
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
heka-identity-service/src/schema-v2/schema-v2.service.ts 98.32% 86.4% 100% 98.32% 324, 327-328, 458-462
Generated in workflow #180 for commit 46e530d by the Vitest Coverage Report Action

@AlexanderShenshin

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented May 27, 2026

Copy link
Copy Markdown
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@cynox-66

Copy link
Copy Markdown
Contributor

Took a look at the failing Snyk check out of curiosity since everything else in the migration is green.

I can’t access the org-level Snyk advisory details, but from the dependency graph changes my guess is it’s likely a newly introduced transitive RN/Expo tooling advisory (micromatch / semver / Metro-chain style issue) rather than a runtime wallet vulnerability.

The migration itself looks solid from the CI side otherwise.

@AlexanderShenshin
AlexanderShenshin force-pushed the feature/heka-wallet-credo-0.6.0 branch from e4b51a6 to f89f512 Compare May 28, 2026 15:00
Signed-off-by: Alexander Shenshin <alexander.shenshin@dsr-corporation.com>
@AlexanderShenshin
AlexanderShenshin force-pushed the feature/heka-wallet-credo-0.6.0 branch from f89f512 to 46e530d Compare May 29, 2026 00:08
@lfdt-bot

Copy link
Copy Markdown

Snyk checks have failed. 6 issues have been found so far.

Status Scan Engine Critical High Medium Low Total (6)
Open Source Security 1 4 1 0 6 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@AlexanderShenshin
AlexanderShenshin merged commit c25b64f into main Jun 2, 2026
9 of 11 checks passed
@AlexanderShenshin
AlexanderShenshin deleted the feature/heka-wallet-credo-0.6.0 branch June 10, 2026 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants